1. Field of the Invention
This invention relates to networking and, more particularly, to detecting a network component's use of a protocol that defines supplemental headers.
2. Description of the Related Art
Network devices, such as bridges and routers, often include many components. For example, a router may include several different line cards. As a network device forwards and/or routes the packets, the different components within that network device communicate with each other.
Often, network device manufacturers implement specialized protocols within network devices in order to improve the performance or reliability of the network devices. Specialized protocols used within network devices commonly operate by attaching special headers to packets that enter the network device. The special headers include information that is used by various components within the network device. For example, each line card within a network device supports a protocol that tags incoming packets with special headers. The special headers include information obtained by performing a forwarding lookup or by applying access controls to the packets. The special headers are typically removed before the packets exit the network device. Such specialized protocols are often proprietary protocols that are specific to a particular network device manufacturer.
Typically, all of the components within a network device will be guaranteed to support the specialized protocol. For example, some network devices only accept a particular vendor's line cards. Each of that vendor's line cards support the specialized protocol, and thus it is ensured that all of the line cards within the network device will support the specialized protocol. Accordingly, there is typically no need to determine whether a particular component within the network device supports the specialized protocol. Since it is assumed that all components within a particular network device or network environment will support the specialized protocol, mechanisms for identifying whether a particular component actually supports the specialized protocol are not implemented.
In certain situations, it is desirable to extend the situations in which a specialized protocol can be used to environments in which it cannot be assumed that all components will support the specialized protocol. Accordingly, it is desirable to be able to determine whether a component supports a specialized protocol.